import { defineConfig } from 'vite'
import uni from '@dcloudio/vite-plugin-uni'
import { resolve } from 'path'

// https://vitejs.dev/config/
export default defineConfig({
  plugins: [uni()],
  server: {
    port: 3000, // 开发服务器端口
    open: true, // 自动打开浏览器
    proxy: {
      // 如果有API请求代理需求，可以在这里配置
    },
    fs: {
      // 允许访问上层目录，解决一些文件访问限制问题
      strict: false
    }
  },
  build: {
    // 生产构建配置
    minify: 'terser',
    terserOptions: {
      compress: {
        drop_console: false, // 保留console方便调试
        drop_debugger: true // 删除debugger
      }
    },
    // 解决路径问题
    assetsInlineLimit: 4096,
    rollupOptions: {
      output: {
        manualChunks: {
          // 分包配置
          'vendor': ['vue']
        }
      }
    }
  },
  resolve: {
    // 路径别名
    alias: {
      '@': resolve(__dirname, '.'),
      '@components': resolve(__dirname, 'components'),
      '@pages': resolve(__dirname, 'pages')
    }
  },
  // 解决uni-app在H5模式下的路径问题
  base: '/',
  publicDir: 'static',
  // 添加history API回退处理
  experimental: {
    renderBuiltUrl(filename) {
      return '/' + filename;
    }
  }
}) 